<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        .box {
            position: fixed;
            right: 10px;
            bottom: 10px;
            height: 30px;
            width: 50px;
            text-align: center;
            padding-top: 20px;
            background-color: lightblue;
            border-radius: 20%;
            overflow: hidden;
        }
        
        .box:hover:before {
            top: 50%
        }
        
        .box:hover .box-in {
            visibility: hidden;
        }
        
        .box:before {
            position: absolute;
            top: -50%;
            left: 50%;
            transform: translate(-50%, -50%);
            content: '回到顶部';
            width: 40px;
            color: peru;
            font-weight: bold;
        }
        
        .box-in {
            visibility: visible;
            display: inline-block;
            height: 20px;
            width: 20px;
            border: 3px solid black;
            border-color: white transparent transparent white;
            transform: rotate(45deg);
        }
    </style>
</head>




<body style="height:2000px;">
    <div id="box" class="box">
        ewewew ewewew
        <li>ew</li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <li></li>
        <e></e>
        <div class="box-in"></div>
    </div>

    <script>
        let timer = null;


        box.onclick = function() {
            console.log(box);
            timer && cancelAnimationFrame(timer);
            let toTop = document.body.scrollTop || document.documentElement.scrollTop;

            function move() {
                console.log(toTop);
                if (toTop <= 0) {
                    toTop = 0
                    window.scrollTo(0, toTop)
                    return
                }
                toTop -= 50;
                window.scrollTo(0, toTop)
                timer = requestAnimationFrame(move)
            }
            move()

        }
    </script>
</body>

</html>